package demo3;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * Author:  LiuTao
 * Version: 1.0
 * Date:    2023-11-23  08:05
 */
import java.util.Scanner;

public class TankGameMenu {
    public static void main(String[] args) {
        // 创建一个Scanner对象，用于接收用户输入
        Scanner scanner = new Scanner(System.in);

        // 调用start方法，开始游戏
        start(scanner);

        // 关闭Scanner
        scanner.close();
    }

    // 开始游戏的方法
    public static void start(Scanner scanner) {
        while (true) {
            // 显示游戏头部
            showHead();

            // 显示一级菜单
            showMenu();

            // 读取用户输入的选项
            int choice = scanner.nextInt();

            // 根据用户的选择执行相应的操作
            switch (choice) {
                case 1:
                    startGame();
                    break;
                case 2:
                    choosePass(scanner);
                    break;
                case 3:
                    choosePlayer(scanner);
                    break;
                case 4:
                    endGame();
                    return; // 退出游戏
                default:
                    System.out.println("无效的选择，请重新输入");
            }
        }
    }

    // 显示游戏头部
    public static void showHead() {
        System.out.println("=== 坦克大战游戏 ===");
    }

    // 显示一级菜单
    public static void showMenu() {
        System.out.println("一级菜单：");
        System.out.println("1.开始游戏");
        System.out.println("2.关卡选择");
        System.out.println("3.玩家选择");
        System.out.println("4.退出游戏");
        System.out.print("请选择操作：");
    }

    // 开始游戏
    public static void startGame() {
        System.out.println("开始游戏");
        // 在这里可以添加开始游戏的逻辑
    }

    // 关卡选择
    public static void choosePass(Scanner scanner) {
        while (true) {
            // 显示关卡选择菜单
            System.out.println("二级菜单 - 关卡选择设置：");
            System.out.println("1.第1关");
            System.out.println("2.第2关");
            System.out.println("3.第3关");
            System.out.println("0.返回上级菜单");

            // 读取用户输入的选项
            int levelChoice = scanner.nextInt();

            // 处理用户选择
            switch (levelChoice) {
                case 1:
                    System.out.println("选择了第1关");
                    // 在这里可以添加设置第1关的逻辑
                    break;
                case 2:
                    System.out.println("选择了第2关");
                    // 在这里可以添加设置第2关的逻辑
                    break;
                case 3:
                    System.out.println("选择了第3关");
                    // 在这里可以添加设置第3关的逻辑
                    break;
                case 0:
                    return; // 返回上级菜单
                default:
                    System.out.println("无效的选择，请重新输入");
            }
        }
    }

    // 玩家选择
    public static void choosePlayer(Scanner scanner) {
        // 显示玩家选择菜单
        System.out.println("二级菜单 - 玩家选择设置：");
        System.out.println("1.1P");
        System.out.println("2.2P");
        System.out.println("0.返回上级菜单");

        // 读取用户输入的选项
        int playerChoice = scanner.nextInt();

        // 处理用户选择
        switch (playerChoice) {
            case 1:
                System.out.println("选择了1P");
                // 在这里可以添加设置1P的逻辑
                break;
            case 2:
                System.out.println("选择了2P");
                // 在这里可以添加设置2P的逻辑
                break;
            case 0:
                // 返回上级菜单
                break;
            default:
                System.out.println("无效的选择，请重新输入");
        }
    }

    // 退出游戏
    public static void endGame() {
        System.out.println("退出游戏");
        // 在这里可以添加退出游戏的逻辑
        System.exit(0);
    }
}
